Modeling computer system throughput is essential to efficiently managing computer systems designed to execute dynamic levels of tasks. Such efficiency is particularly significant in situations where large amounts of data are processed and/or tasks are distributed to a set of multiple computer systems because system performance is a potential bottleneck.
Datacenters, commonly used in applications such as telecommunications for storage of large amounts of data, employ multiple computer systems and are often required to manage the execution of numerous and/or complex computing tasks. Many times in such systems, processors are operating at different clock frequencies. Modern computer systems can also dynamically change CPU clock frequency to better manage their power consumption. Most datacenters rely on specialized software to manage the placement of workloads in a datacenter in the most efficient way possible with regards to power and cooling. The highest efficiency is generally achieved under those circumstances when the management software dynamically adjusts the operating frequencies of computer systems in the datacenter, according to the task management implications predicted by a reliable model. Ideally, at any given point in time, the managed servers provide no more performance than required, thus minimizing power and cooling needs.
Additional system characteristics, other than processor frequency and memory system frequency, may also be traded-off for reduced power and cooling. Many applications, for example, are sensitive to system memory capacity and/or the number of input/output paths to external devices. Just as in the case of component frequency, the effects of altering these characteristics can be modeled, and the outputs of the models can be used to make decisions about, say, temporarily removing power from some of the DIMMs or I/O adapters in a server.
Throughout the drawings, identical reference numbers designate similar, but not necessarily identical, elements.